Shopgraph

Created By
Krishna Brown2 months ago
AI shopping agents need structured product data to compare prices, check availability, and make decisions. Shopify Catalog covers Shopify merchants. Google UCP covers Google Shopping. ShopGraph covers everything else — the DTC brands, independent retailers, and niche suppliers that platform catalogs miss. Send any product URL, get structured JSON back. $0.01-$0.02 per call.
Overview

@laundromatic/shopgraph

Structured product data from the open web, where platform APIs don't reach. Schema.org + AI extraction. Pay per call via Stripe MPP.

Website: https://shopgraph.dev | MCP Endpoint: https://shopgraph.dev/mcp

What it does

Agents connect via Model Context Protocol and call enrichment tools to extract structured product data from URLs. Requests are payment-gated via Stripe: unauthenticated calls receive a 402 challenge, authenticated calls with a payment_method_id are processed and billed.

Architecture

Agent → MCP (streamable-http) → enrich_product / enrich_basic
  → Cache hit? Return immediately (free)
  → No payment_method_id? Return 402 + MPP challenge
  → Payment confirmed → schema.org extraction (fast, 0.95 confidence)
  → No structured data? → Gemini LLM fallback (0.7+ confidence)
  → Bot-blocked or JS-rendered? → Playwright browser fallback
  → Return ProductData + PaymentReceipt

Setup

npm install

Required environment variables in .env:

VariablePurpose
STRIPE_TEST_SECRET_KEYStripe test mode secret key
GOOGLE_API_KEYGemini API key for LLM fallback

Note: Check .env for duplicate key definitions — dotenv uses the last occurrence.

Build & Run

npm run build          # Compile TypeScript
npm start              # Run MCP server (stdio)
npm run start:http     # Run HTTP server (for Vercel/remote)
npm run dev            # Run with tsx (no build needed)

Test

npm run test:run       # Run all tests once
npm test               # Run tests in watch mode

Tools

ToolPriceDescription
enrich_product$0.02Full product data extraction
enrich_basic$0.01Basic attributes only (no images)

Cached results are returned free of charge (24-hour TTL).

MCP Configuration

Add to your MCP client config:

{
  "mcpServers": {
    "shopgraph": {
      "command": "node",
      "args": ["/path/to/shopgraph/dist/index.js"]
    }
  }
}
Project Info
Created At
2 months ago
Updated At
2 months ago
Author Name
Krishna Brown
Star
-
Language
-
License
-
Category

Recommend Servers

View All
Alloy

2 days ago
Bring your real authenticated browser session to AI coding agents. Local-first MCP server + Chrome MV3 extension. No cloud. No telemetry.
@Cubenest

peek records the user's actual logged-in browser (DOM via rrweb, console events, network metadata, optional response bodies via opt-in Deep capture) through a Chrome MV3 extension. The extension ships events through a native-messaging stdio bridge to a local MCP server (peek-mcp), which persists them to a SQLite database at ~/.peek/sessions.db. AI coding agents (Claude Code, Cursor, Cline, Windsurf) read sessions from the database via 10 MCP tools: Tool What it does list_recent_sessions List recently recorded sessions (id, origin, ts, event count). get_session_summary LLM-readable narrative summary of a session. get_session_console_errors Console errors recorded in a session. get_session_network_errors Failed/notable network requests in a session. get_user_action_before_error Last N user actions before a console error. generate_playwright_repro Generate a runnable Playwright test from a session. get_dom_snapshot Reconstruct the DOM at a given timestamp. query_dom_history Timeline of attribute/text changes for a selector. request_authorization Side-panel consent for write actions (Level 3). execute_action Dispatch a UI action (gated by permission level + destructive blocklist). Why local-first matters Every other "browser session for AI" tool ships to a vendor cloud. peek's SQLite + extension live on the user's machine — no remote endpoints, no telemetry. The privacy policy (docs/peek/PRIVACY_POLICY.md) is the source of truth. Install # 1. Add the MCP server to Claude Code claude mcp add peek -- npx -y @peekdev/mcp # 2. Install the Chrome extension from the Chrome Web Store # (link added once the CWS listing is approved)

8 hours ago
Crevio

a day ago